home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Aminet 2
/
Aminet AMIGA CDROM (1994)(Walnut Creek)[Feb 1994][W.O. 44790-1].iso
/
Aminet
/
dev
/
c
/
ACM.lha
/
CManual
/
ACM4
/
Appendices
/
Contents.doc
< prev
next >
Wrap
Text File
|
1991-01-27
|
9KB
|
485 lines
AMIGA C MANUAL
Version V2.000
---------------
C O N T E N T S
---------------
0 INTRODUCTION
0.1 INTRODUCTION
0.2 HOW TO COMPILE AND LINK
0.2.1 SOURCE CODE
0.2.2 FIRST PHASE OF COMPILATION
0.2.3 SECOND PHASE OF COMPILATION
0.2.4 LINKING
0.3 C PROGRAMS
0.3.1 #INCLUDE
0.3.2 #DEFINE
0.3.3 OTHER PRE-PROCESSOR COMMANDS
0.3.4 FUNCTIONS
0.3.5 VARIABLES
0.3.6 STORAGE CLASSES FOR VARIABLES
0.3.6.1 AUTOMATIC
0.3.6.2 FORMAL
0.3.6.3 GLOBAL
0.3.6.4 EXTERNAL STATIC
0.3.6.5 INTERNAL STATIC
0.3.6.6 REGISTER
0.3.7 POINTERS
0.3.8 STRUCTURES
0.3.8.1 HOW TO DECLARE STRUCTURES
0.3.8.2 HOW TO CHANGE THE STRUCTURE'S FIELDS
0.3.8.3 POINTERS AND STRUCTURES
0.3.9 CASTING
0.4 LIBRARIES
0.4.1 ROM LIBRARIES
0.4.2 DISK LIBRARIES
0.4.3 OPEN AND CLOSE LIBRARIES
0.5 MEMORY
1 SCREENS
1.1 INTRODUCTION
1.2 DIFFERENT TYPES OF SCREENS
1.3 WORKBENCH SCREEN
1.4 CUSTOM SCREENS
1.4.1 RESOLUTION
1.4.2 DEPTH
1.4.3 INTERLACED
1.4.4 HAM AND EXTRA HALFBRIGHTE
1.4.5 DUAL PLAYFIELDS
1.4.6 FONTS
1.4.7 SIZE AND POSITION
1.4.8 TITLE
1.4.9 GADGETS
1.5 INITIALIZE A CUSTOM SCREEN
1.6 OPEN A CUSTOM SCREEN
1.7 SCREEN STRUCTURE
1.8 FUNCTIONS
1.9 EXAMPLES
2 WINDOWS
2.1 INTRODUCTION
2.2 SPECIAL WINDOWS
2.2.1 BACKDROP WINDOWS
2.2.2 BORDERLESS WINDOWS
2.2.3 GIMMEZEROZERO WINDOWS
2.2.4 SUPERBITMAP WINDOWS
2.3 SYSTEM GADGETS
2.4 REDRAWING THE WINDOW DISPLAY
2.5 INITIALIZE A WINDOW
2.6 OPEN A WINDOW
2.7 WINDOW STRUCTURE
2.8 OPEN A SUPERBITMAP WINDOW
2.9 MAKE YOUR OWN CUSTOM POINTER
2.10 FUNCTIONS
2.11 EXAMPLES
3 GRAPHICS
3.1 INTRODUCTION
3.2 LINES TEXT PICTURES
3.3 BORDERS
3.3.1 THE BORDER STRUCTURE
3.3.2 COORDINATES
3.4 HOW TO USE THE BORDER STRUCTURE
3.4 TEXT
3.4.1 THE INTUITEXT STRUCTURE
3.4.2 FONTS
3.4.3 HOW TO USE THE INTUITEXT STRUCTURE
3.5 IMAGES
3.5.1 IMAGE DATA
3.5.2 THE IMAGE STRUCTURE
3.5.3 PLANEPICK
3.5.4 PLANEONOFF
3.5.5 HOW TO USE THE IMAGE STRUCTURE
3.6 FUNCTIONS
3.7 EXAMPLES
4 GADGETS
4.1 INTRODUCTION
4.2 DIFFERENT TYPES OF GADGETS
4.3 CUSTOM GADGETS
4.3.1 GRAPHICS FOR CUSTOM GADGETS
4.3.2 POSITION
4.3.3 SIZE
4.4 INITIALIZE A CUSTOM GADGET
4.5 BOOLEAN GADGET
4.6 STRING/INTEGER GADGET
4.6.1 STRINGINFO STRUCTURE
4.6.2 INITIALIZE A STRING/INTEGER GADGET
4.6.3 USING A STRING/INTEGER GADGET
4.7 PROPORTIONAL GADGET
4.7.1 PROPINFO STRUCTURE
4.7.2 INITIALIZE A PROPORTIONAL GADGET
4.8 MONITORING THE GADGETS
4.9 FUNCTIONS
4.10 EXAMPLES
5 REQUESTERS
5.1 INTRODUCTION
5.2 DIFFERENT TYPES OF REQUESTERS
5.2.1 SYSTEM REQUESTERS
5.2.2 APPLICATION REQUESTERS
5.2.3 DOUBLE-MENU REQUESTERS
5.3 GRAPHICS FOR REQUESTERS
5.4 POSITION
5.5 REQUESTERS AND GADGETS
5.6 SIMPLE REQUESTERS
5.7 OPEN A REQUESTERS
5.7.1 INITIALIZE A REQUESTER
5.7.2 HOW TO ACTIVATE AN APPLICATION REQUESTER
5.8 IDCMP FLAGS
5.9 FUNCTIONS
5.10 EXAMPLES
6 ALERTS
6.1 INTRODUCTION
6.2 DIFFERENT LEVELS OF WARNINGS
6.3 HOW TO USE THE DISPLAYALERT() FUNCTION
6.4 EXAMPLES OF STRINGS AND SUBSTRINGS
6.5 FUNCTIONS
6.6 EXAMPLES
7 MENUS
7.1 INTRODUCTION
7.2 MENU DESIGN
7.3 HOW TO ACCESS MENUS FROM THE KEYBOARD
7.4 MENU ITEMS
7.5 MUTUAL EXCLUDE
7.6 OPEN A MENU
7.6.1 INITIALIZE A MENU STRUCTURE
7.6.2 INITIALIZE A MENUITEM STRUCTURE
7.6.3 HOW TO SUBMIT AND REMOVE A MENU STRIP TO/FROM A WINDOW
7.7 SPECIAL IDCMP FLAGS
7.7.1 MENUPICK
7.7.2 MENUVERIFY
7.8 MENU NUMBERS
7.9 FUNCTIONS
7.10 MACROS
7.11 EXAMPLES
8 IDCMP
8.1 INTRODUCTION
8.2 IDCMP PORTS
8.3 HOW TO RECEIVE IDCMP MESSAGES
8.3.1 OPEN IDCMP PORTS
8.3.2 WAIT FOR MESSAGES
8.3.3 COLLECT MESSAGES
8.3.4 EXAMINE THE MESSAGE
8.3.5 REPLY
8.3.6 EXAMPLE
8.4 IDCMP FLAGS
8.5 FUNCTIONS
8.6 EXAMPLES
9 MISCELLANEOUS
9.1 INTRODUCTION
9.2 MEMORY
9.2.1 ALLOCATE MEMORY
9.2.2 DEALLOCATE MEMORY
9.2.3 REMEMBER MEMORY
9.3 PREFERENCES
9.4 WARNINGS
9.5 DOUBLE CLICK
9.6 TIME
9.7 STYLE
9.7.1 GADGETS
9.7.2 REQUESTERS
9.7.3 MENUS
9.7.4 MOUSE
9.8 FUNCTIONS
9.9 EXAMPLES
10 SPRITES
10.1 INTRODUCTION
10.2 LIMITATIONS
10.3 COLOURS
10.4 ACCESS HARDWARE SPRITES
10.4.1 SPRITE DATA
10.4.2 SIMPLESPRITE STRUCTURE
10.4.3 RESERVE A SPRITE
10.4.4 PLAY WITH THE SPRITE
10.4.5 FREE THE SPRITE
10.4.6 PROGRAM STRUCTURE
10.5 TECHNIQUES
10.5.1 WIDER SPRITES
10.5.2 MORE COLOURS
10.5.2.1 15 COLOURED SPRITE DATA
10.5.2.2 ATTACH SPRITES
10.5.2.3 MOVE ATTACHED SPRITES
10.5.3 LEVELS
10.6 FUNCTIONS
10.7 EXAMPLES
11 AMIGADOS
11.1 INTRODUCTION
11.1.1 PHYSICAL DEVICES
11.1.2 VOLUMES
11.1.3 DIRECTORIES/SUBDIRECTORIES/FILES
11.1.4 LOGICAL DEVICES
11.2 OPEN AND CLOSE FILES
11.3 READ AND WRITE FILES
11.3.1 READ()
11.3.2 WRITE()
11.4 MOVE INSIDE FILES
11.5 FILES AND MULTITASKING
11.6 OTHER USEFUL FUNCTIONS
11.6.1 CREATE DIRECTORIES
11.6.2 DELETE FILES AND DIRECTORIES
11.6.3 RENAME FILES AND DIRECTORIES
11.6.4 ATTACH COMMENTS TO FILES AND DIRECTORIES
11.6.5 PROTECT FILES AND DIRECTORIES
11.7 EXAMINE FILES AND DIRECTORIES
11.7.1 FILEINFOBLOCK AND DATESTAMP STRUCTURE
11.7.2 EXAMINE()
11.7.3 4 BYTE BOUNDARY
11.7.4 EXAMPLE
11.7.5 EXAMINE FILES/SUBDIRECTORIES IN A DIRECTORY/DEVICE
11.7.5.1 EXNEXT()
11.7.5.2 ERROR MESSAGES
11.7.5.3 EXAMPLE
11.8 FUNCTIONS
11.9 EXAMPLES
12 LOW LEVEL GRAPHICS ROUTINES
12.1 INTRODUCTION
12.2 CREATE A DISPLAY
12.2.1 GENERAL INFORMATION
12.2.1.1 HOW A MONITOR/TV WORK
12.2.1.2 INTERLACED
12.2.1.3 HIGH AND LOW RESOLUTION
12.2.1.4 PIXELS
12.2.1.5 COLOURS
12.2.2 DISPLAY ELEMENTS
12.2.2.1 RASTER
12.2.2.2 VIEW
12.2.2.3 VIEWPORT
12.2.2.4 BITMAP
12.2.3 CREATE A DISPLAY
12.2.3.1 VIEW
12.2.3.1.1 VIEW STRUCTURE
12.2.3.1.2 PREPARE A VIEW STRUCTURE
12.2.3.2 VIEWPORTS
12.2.3.2.1 VIEWPORT STRUCTURE
12.2.3.2.2 PREPARE A VIEWPORT STRUCTURE
12.2.3.3 COLORMAP
12.2.3.3.1 COLORMAP STRUCTURE
12.2.3.3.2 DECLARE AND INITIALIZE A COLORMAP STRUCTURE
12.2.3.3.3 SET THE RGB VALUES
12.2.3.3.4 DEALLOCATE THE COLOURMAP
12.2.3.4 BITMAP
12.2.3.4.1 BITMAP STRUCTURE
12.2.3.4.2 DECLARE AND INITIALIZE A BITMAP STRUCTURE
12.2.3.4.3 ALLOCATE RASTER
12.2.3.5 RASINFO
12.2.3.5.1 RASINFO STRUCTURE
12.2.3.5.2 DECLARE AND INITIALIZE A RASINFO STRUCTURE
12.2.3.6 MAKEVPORT()
12.2.3.7 MRGCOP()
12.2.3.8 LOADVIEW()
12.2.4 CLOSE A DISPLAY
12.2.5 EXAMPLE
12.3 DRAW
12.3.1 RASTPORT
12.3.1.1 RASTPORT STRUCTURE
12.3.1.2 PREPARE A RASTPORT
12.3.2 DRAWING PENS
12.3.3 DRAWING MODES
12.3.4 PATTERNS
12.3.4.1 LINE PATTERNS
12.3.4.2 AREA PATTERNS
12.3.4.3 MULTICOLOURED PATTERNS
12.3.5 BITPLANE MASK
12.3.6 DRAW SINGLE PIXELS
12.3.7 READ SINGLE PIXELS
12.3.8 POSITION THE CURSOR
12.3.9 TEXT
12.3.10 DRAW SINGLE LINES
12.3.11 DRAW MULTIPLE LINES
12.3.12 DRAW FILLED RECTANGLES
12.3.13 FLOOD FILL
12.3.14 DRAW FILLED AREAS
12.3.14.1 AREAINFO AND TMPRAS STRUCTURES
12.3.14.2 AREAMOVE(), AREADRAW() AND AREAEND()
12.3.14.3 TURN OFF THE OUTLINE FUNCTION
12.3.14.4 EXAMPLE
12.3.15 SET THE RASTER TO A SPECIFIC COLOUR
12.3.16 BLITTER
12.3.16.1 CLEAR RECTANGULAR MEMORY AREAS
12.3.16.2 SCROLL A RECTANGULAR AREA
12.3.16.3 COPY RECTANGULAR AREAS
12.4 FUNCTIONS
12.5 EXAMPLES
13 VSPRITES
13.1 INTRODUCTION
13.2 HOW VSPRITES WORK
13.2.1 LIMITATIONS
13.2.2 HOW TO AVOID THE LIMITATIONS
13.3 CREATE VSPRITES
13.3.1 VSPRITE DATA
13.3.2 VSPRITE STRUCTURE
13.3.3 COLOUR TABLE
13.3.4 GELSINFO STRUCTURE
13.3.5 INITIALIZE THE GELSINFO STRUCTURE
13.3.6 INITIALIZE THE VSPRITE STRUCTURE
13.3.7 ADD THE VSPRITE TO THE VSPRITE LIST
13.3.8 PREPARE THE GEL SYSTEM
13.3.9 CHANGE THE VSPRITE
13.3.10 REMOVE VSPRITES
13.4 A COMPLETE EXAMPLE
13.5 FUNCTIONS
13.6 EXAMPLES
14 HINTS AND TIPS
14.1 INTRODUCTION
14.2 NTSC VERSUS PAL
14.2.1 HOW TO WRITE PROGRAMS THAT WILL FIT BOTH SYSTEMS
14.2.2 NTSC OR PAL?
14.3 PROGRAMS RUNNING UNDER WORKBENCH
14.4 CHECK IF THE PROGRAM WAS STARTED FROM CLI OR WORKBENCH
14.5 EXAMPLES